Building JCapper Databases

 

General Overview

Creation of a JCapper Database is a prerequisite to using the Data Window. At some point, most players will want to use JCapper to build a database. What follows below are the steps necessary to complete this task along with some discussion of best practices to go by along the way. Creating databases using any software often involves topics that can (and perhaps should) be very intimidating to the non-techies among you. For that reason, this document is broken out into two sections. The first section provides a quick and dirty how-to where coverage is limited to the basic steps needed to get the job done. The second section is intended for those users who may be more technically inclined and who want to learn more about what is going on behind the scenes whenever a Build Database routine is run. In this section, you'll find discussion about running each task as a separate process, workFiles, recovery from errors caused by corrupt past performance files, and best practices. .

 

 

 

Section I

Running the JCapper Database Builder (a high level look)

 

Prerequisite

Important: You must have a collection of unzipped past performance data files along with matching results files sitting on the same folder. To start, for the sake of simplicity, and until you gain some genuine familiarity with the program, I recommend that all data and results files be extracted onto your Default Data Folder. (note: If you downloaded the program during 2010, then your default data folder is c:\2010.) After gaining some genuine familiarity with the program, then consider creating your own custom folder structure. You have to learn to walk before you can fly!

 

 

To create a JCapper Database:

 

1. From the Main Module, click the Build Database button. This will launch the Database Builder.

 

On the Database Builder Main Screen:

 

1. Read the On Screen Instructions. They're there as a simple reminder so that you don't have to look here.

 

2. Select the appropriate Data File Type from the file types drop down. If are running JCapper under an HDW User License select HDW JCapper Data file (*.jcp) as your file type from the drop down. If you are using Brisnet files, select either Bris $1.00 DRF Single Format Data File (*.drf) or Bris Multicaps Data File (*.mcp) as your file type. Your file type selection will auto persist – making your selection the default until you change it. Note: Your file type selection must also match the Data Vendor Selection from the User System Definitions Screen. See the screenshot gallery below.

 

3. Use the Folder Icon to point to a target folder. This step is necessary only if your data and results files are sitting on a folder other than your default data folder. Hint: As a Best Practice, get in the habit of using the Data Folder Manager to set your Default Data Folder before launching the Database Builder. That way the Database Builder will auto point at your Default Data Folder every time you launch it.

 

4. Select the appropriate Build Mode from the Build Modes drop down. Hint: See the section on Build Modes below for an explanation about each build mode.

 

5. Click the Build Database button. This will cause the Database Builder to run the Build Database Routine. When the routine has been completed, you will be given a chance to view an exception report where you can see a listing of any missing XRD results files.

 

That's it. Those are the bullet points you need to know before building JCapper Databases… the high level look at the landscape… as viewed from 50,000 feet.

 

Hint: To see a demonstration of database builds in action, visit JCapper.com. Click the JCapper 101 Audi Video link and look for the Index section labeled Building Databases. Watching the videos there will help clear things up. They say a picture is worth 1000 words.

 

 

 

 

 

Section II

Building JCapper Databases (a detailed look)

 

The Main Module Build Database Button (General Overview)

Users can initiate a build JCapper Database routine by clicking the Main Module's Build Database button. When clicked, this button will start the Database Builder which will in turn auto fire the sequence of steps needed for a database build.

           

The Database Builder

When the Database Builder first opens, the initial screen contains the following visual elements:

1. Instructions

2. The Folder Icon

3. The Build Database Button

4. The File Type selection drop down.

5. Checkboxes

6. The Build Modes drop down.

 

Take a moment to read the instructions on the screen. When first opened, the Database Builder will auto point to your Default Data Folder. As a best practice, get in the habit of using the Data Folder Manager to set your Default Data Folder before you launch the Database Builder. The pointed to folder is always displayed on the face of the Build Database button. Your target or pointed to folder must contain the unzipped past performance and results files from which you want to build a database.

 

The steps to building a JCapper database are:

  1. Make sure that you have a collection of unzipped data and results files that match up by track and date on a target folder.
  2. Point the Database Builder at your target folder.
  3. Select the appropriate file type from the File Types Drop Down.
  4. Select the appropriate Build Mode from the Build Modes Drop Down. This will auto check the appropriate checkboxes for the Build Mode selected. Or, as an alternate method, check the appropriate boxes manually.
  5. After completing steps 1-4 above, click the Build Database Button. The Database Builder will create a JCapper database for you.

 

Prerequisite

You must have a collection of unzipped past performance data files along with matching results files sitting on the same folder. To start, for the sake of simplicity, and until you gain some genuine familiarity with the program, I recommend that all data and results files be extracted onto your Default Data Folder. (note: If you downloaded the program during 2005, then your default data folder is c:\2005.) After gaining some genuine familiarity with the program, then consider creating your own custom folder structure. You have to learn to walk before you can fly!

 

Append to Database Setting

There is a setting on the System Settings/System Definitions screen - it is actually a checkbox - that allows for appending to an existing database during a database build rather than performing a database build from scratch.

When a Build Database is run with the box unchecked, the database is rebuilt from scratch. When a Build Database is run from scratch, the file contents of the entire database is completely overwritten.

When this box is checked, JCapper will maintain a list of race card files for each target folder in the DO_3.TXT WorkFile When you click the Build Database button, only fresh race cards and results are added to each database. Once caveat: After checking the box, the first database build run for each folder will rebuild from scratch. This is needed to get a list of card files into the DO_3 WorkFile. After that first build, subsequent database builds will invoke the append function.

Why use the Append Setting? Doing so drastically reduces database build time. This is so because only fresh race cards are added to the database. When the Append Setting is not in use, the entire database is re-built from scratch- a procedure where all race card files on the pointed to folder are used.

 

Database Builder Folder Icon Nav Tool

The Folder Icon Nav Tool can be used to point to any folder on the current drive. (Note- the current drive can be changed under System Settings/Set Default Data Folder.) To use the Folder Icon Nav Tool to point to a different folder, first click the Folder Icon itself. This will cause the Folder Icon Nav Tool to open. When the Folder Icon Nav Tool is open, you can select a different folder simply by double clicking on it inside the Folder Icon Nav Tool. Each time a new folder has been selected, the name of the new pointed to folder will appear on the face of the Build Database button. When you have selected the correct folder, you may close the Folder Icon Nav Tool simply by clicking on the Database Builder screen anywhere outside of the white Folder Icon Nav Tool border. After closing the Folder Icon Nav Tool, click the Build Database button.

 

Database Builder Data File Type Selection Drop Down

Before building a database, you will need to select a data file type. This is the data file type from your data provider. Available file types are: Bris Single Format Data Files, Procaps Data Files, and TSN Single Format Data Files. Logic in the Database Builder treats different data file types in the following manner: The file type selected by the user prior to clicking Build Database is the file type used during all database creation routines. All other file types are ignored. This prevents mixing of multiple file types within the same database.

 

Database Builder Build Database Button

When clicked the Database Builder's Build Database Button will auto-fire the following sequence of events:

 

            1. WorkFile Builder

            2. Results File Importer

            3. WorkFile Builder (a second time)

            4. Creation of PlayList File

 

It is not really necessary for users to understand the inner workings of how the system creates databases. All you really need to know is that you need to click the Build Database button. After doing that, each of the steps will happen automatically, requiring no further interaction from the user at all. At the end of the event sequence, the user is presented with a 'Database Created' message.

 

For those interested in the inner workings of the Database Builder, a section on the events that take place during build database routines is presented towards the end of this help doc.

 

 

Database Build Modes (Added 4/27/2010)

During the summer of 2010, the ability to build databases in SQL Mode was added. To facilitate SQL Mode build database routines, several checkboxes were added to the Database Builder’s Build Database Screen. The checkboxes give the user explicit control over the way build database routines behave. For some users (the more computer literate) the checkboxes make perfect sense and provide an easy way to control the behavior of the build database routine about to be run. For others (the less computer literate) the checkboxes can be confusing – leaving the user “guessing” which boxes should be checked under which circumstances.

 

In the 4/27/2010 Program Update, five Database Build Modes were introduced. Each “Build Mode” is designed to handle a specific set of circumstances. This makes your job as a JCapper user easy. All you have to do is select the appropriate Mode from the Build Modes Drop Down. The interface will auto check the appropriate boxes on the Build Database Screen.

 

Each of the five modes (and the circumstances each mode is designed for) are described below.

 

MODE 1 (Build From Scratch)

Overwrite Text File

Leave StarterHistory Table Untouched

 

Build using this mode when you are:

 

Building a folder from Scratch and either:

 

a. Running in PlayList File Mode exclusively

 

or

 

b. Populating the StarterHistory Table using Data Window Export exclusively

 

 

MODE 2 (Build As Append)

Append to Text File

Leave StarterHistory Table Untouched

 

Build using this mode when:

 

1. You are running in PlayList File Mode exclusively and:

 

a. You have already run at least one build on the target folder creating a text file there and:

 

b. You have added new (unzipped) data and results files to the target folder and:

 

c. You would prefer to run the next build on the target folder as an Append rather than From Scratch because it is FASTER.

 

OR

 

Build using this mode when:

 

1. You are running in SQL Mode and:

 

2. Conditions a. b. and c. above have all been met and

 

3. You are using Data Window Export to populate your StarterHistory Table.

 

 

MODE 3 (Build From Scratch)

Overwrite Text File

Overwrite StarterHistory Table

 

Build using this mode when you are:

 

Building a folder from Scratch and you are deliberately clearing out the StarterHistory Table first before running the build because:

 

1. You just installed a program update that requires rebuilding from scratch.

 

or

 

2. You just reworked your SQL Mode F-Factor Setup and want to repopulate the StarterHistory Table so that

it contains data based on your new SQL Mode F-Factor Setup.

 

You would typically use this mode when building the FIRST folder immediately following either 1 or 2 above.

 

 

MODE 4 (Build From Scratch)

Overwrite Text File

Append to StarterHistory Table

 

Build using this mode when:

 

You are performing the VERY FIRST BUILD on a target folder and you have data from other folders sitting in your StarterHistory Table that you want to keep.

This Build Mode creates a new text file on the target folder, but because it does not clear the StarterHistory Table prior to running the build,

existing data in the table is left intact - and the build causes new data from the target folder to be appended (added) to the StarterHistory Table.

 

An example of a scenario when it would be a good idea to use this Build Mode is:

 

You have existing data in the StarterHistory Table that you want to keep, you are using a monthly folder structure, the calendar has recently

rolled over to a new month, and you are about to run your first build on a new target folder for the new month.

 

 

MODE 5 (Build as Append)

Append to Text File

Append to StarterHistory Table

 

Build using this Mode when:                                         

 

1. You are running in SQL Mode and:

 

a. You have already run at least one build on the target folder creating a text file there and:

 

b. There is existing data sitting in the StarterHistory Table. Not only do you want to keep that exisitng data in the table, you want to add to it using data from the current build.

 

c. You have added new (unzipped) data and results files to the target folder since the last build and:

 

d. You would prefer to run the next build on the target folder as an Append rather than From Scratch because it is FASTER.

 

2. Conditions a. b. c. and d. above have all been met and you are using Build Database Routines rather than Data Window Exports to populate your StarterHistory Table.

 

 

Screenshot Gallery:

 

 

 

Screenshot (above) The user is selecting Mode 5 from the Build Modes Drop Down                                      

 

 

 

Screenshot (above) The user is selecting .JCP as the file type.

 

 

 

 

Screenshot (above) Using the Folder Nav Tools to select a target folder.                                

 

 

 

 

Screenshot (above) Folder, File Type, and Build Mode Selected…

Boxes are auto checked and we’re ready to go.

 

 

 

Screenshot (above) - The User System Definitions Screen…

Note the location on the screen of the checkboxes that control the settings for

Append and Data Vendor.

 

Note: By manually selecting a Build Mode, or manually checking or unchecking

boxes on the Database Builder Screen – you the user have the ability to override

the Append setting on the User System Definitions Screen. However, the File Type

Drop Down on the Database Builder Screen does not give you the ability to

override the Data Vendor Setting shown above. Changes to the Data Vendor setting

must always be made on the User System Definitions Screen.

 

 

 

 

Data Providers        

JCapper supports the following data file types:

  1. Brisnet DRF Single Format Data Files
  2. Brisnet MCP Multicaps Data Files
  3. HDW JCapper Data Files

 

JCapper Supports the following results file types:

  1. Brisnet XRD Exotic Results Files
  2. HDW Text Charts Files

 

 

Data Provider Contact Info:

 

Brisnet.com

1-800-354-9206
859-223-4444
http://www.brisnet.com/

 

 

HDW, Inc.

phone: 502-570-0333
email: HDWInc@gmail.com
http://www.horsedata.com/
Contact: Ron Tiller

 

 

JCapper Platinum User Licenses

I currently offer two types of JCapper Platinum User Licenses:

  1. Full User License (Support for both Brisnet and HDW)
  2. HDW Only User License (Support for HDW Only)

 

Full disclosure: HDW pays software developers a monthly commission based on the total number of data subscribers. Brisnet does not. For that reason, HDW Only User Licenses are offered at a discount compared to the price of Full User Licenses.

 

 

Recommended Best Practices

Here is a short list of recommended best practices:

1.      Avoid mixing files from different data providers on the same folder.

2.      Avoid mixing files from different years on the same folder.

3.      Name your folders in a descriptive way. Know at a glance whenever you look at folder names/folder structure the file type and time period for the files stored on any given folder.

4.      Make regular backups of key files. Be sure that you use off site backup.

 

 

File Backup of Key Files

The following are considered Key Files in JCapper:

    1. c:\2004\JCapper.mdb – This is the file that where your UDM Definitions are stored. This represents your work. In the event of the unthinkable, you can always download a current version of the program from the JCapper site and I will be more than happy to help you get it up and running again. Even though it’s expensive you can buy lost data and results files from the Brisnet Archive Server… or maybe find another player willing to help you out. I can’t emphasize strongly enough that I can’t replace your work. If you’ve spent considerable time creating UDMs be religious about backing up this file.
    2. c:\JCapper\Exe\JCapper2.mdb – This is the file where your StarterHistory Table, SQL Mode Factor Setup, and Customizable SQL Mode Report Layout are stored. These last two items represent your work. Enough said.
    3. Pl_profile.txt file for any target folder. This is the PlayList text file that the Data Window uses as a data source for Data Window queries run in PlayList File Mode. Note that this file is fully replaceable in that it can be recreated at any time by running a Build Database From Scratch on the target folder. Every once in a while you will run into a corrupt data or results file while running a build database routine. Having a good backup of your most recent PlayList file can get you back in business quickly in the event a build database routine errors out.
    4. Data and Results Files obtained from your Data Provider. Don’t take this last file category lightly. Data and results files (while fully replaceable) are expensive.

 

Recommended Backup Media and Methods

Backup media needn’t be expensive. The key to good backups is doing them regularly and using remote locations. A remote location can be as easy as burning key files to a new CD (or rotating flash drives) every few days and keeping said CDs (or rotating flash drives) in locations other than your home. If you are using an email service where your emails are stored on a server – it’s also possible to email yourself a zipped up copies of key files. Be careful about this last method though. Many email services only keep emails on their servers for a limited period of time.

 

When unforeseen events such as theft, fire, or hard drive crash happen – I guarantee you you’ll be glad that you took a few minutes each week to perform off site backup. Make it a regular habit and be religious about it. You never know…

 

A little thought ahead of time goes a long way towards preventing headaches that are best/easily avoided.

 

 

 

 

Switching Back And Forth Between Data Providers in JCapper

If you have a Full User License, you may use data and results files from both Brisnet and HDW. I strongly recommended following the best practices listed above. Accordingly, for those obtaining data from both providers - I recommend maintaining two separate databases. Avoid mixing Brisnet and HDW data in the same database. The algorithms used by each provider to create their numbers are different. Data from each provider “behaves” differently enough that I advise creating separate UDMs and wagering models for each provider.

 

Here are the settings/places in JCapper where data vendor/data file types are defined:

  1. The Data Vendor Setting Checkbox found on the User System Definitions Screen. Check HDW and click Save before working with HDW data. Click Brisnet and click Save before working with Brisnet data.
  2. The File Type Drop Downs found on the Card Loader, The Database Builder, and Screen Two of The File Downloader. Select the appropriate file type before using these (or future) JCapper modules to process data files.

 

 

 

 

 

 

                                                                                                                                                             

Events That Take Place During a Build Database Routine

Each of the separate events is discussed below to provide information to the user as to what events are taking place behind the scenes and why. It should also be noted that each of these steps can be run by the user as separate processes if desired… although it is recommended that the easiest best way to run Build Database routines is to simply select the appropriate Mode and click the Build Database button.

 

WorkFile Builder

In JCapper, a WorkFile is a text file containing a list of either past performance data files or XRD results files found to exist on the pointed to folder at the point in time when a Build Database routine is initiated. The WorkFile Builder can be launched and run as a separate process from the Build WorkFile button found on the Results File Importer. The WorkFile Builder is run automatically requiring no user interaction whatsoever whenever the Database Builder's Build Database button is clicked. Information about the WorkFile Builder is provided below for those users interested in knowing how to run the WorkFile Builder as a separate process and who want to get a better understanding of what is going on behind the scenes whenever a Build Database routine is run.

 

WorkFile Builder Folder Icon Nav Tool

The Folder Icon Nav Tool can be used to point to any folder on the current drive. (Note- the current drive can be changed under System Settings/Set Default Data Folder.) To use the Folder Icon Nav Tool to point to a different folder, first click the Folder Icon itself. This will cause the Folder Icon Nav Tool to open. When the Folder Icon Nav Tool is open, you can select a different folder simply by double clicking on it inside the Folder Icon Nav Tool. Each time a new folder has been selected, the name of the new pointed to folder will appear on the face of the Build Work Files button. When you have selected the correct folder, you may close the Folder Icon Nav Tool simply by clicking on the WorkFile Builder screen anywhere outside of the white Folder Icon Nav Tool border. After closing the Folder Icon Nav Tool, click the Build Work Files button.

 

WorkFile Builder Data File Type Selection Drop Down

Before building WorkFiles, you will need to select a data file type. This is the data file type from your data provider. Available file types are: Bris Single Format Data Files, Procaps Data Files, and TSN Single Format Data Files.

 

WorkFile Builder Build WorkFiles Button

When clicked, the Build WorkFiles button causes the following action to take place: Logic in the WorkFile Builder scans the pointed to folder and matches up past performance data files of the type selected by the user with XRD Results files by track and date. Four WorkFiles are created each time the Build WorkFiles button is clicked:

 

·         DO_1 WorkFile

This type of WorkFile contains a list of all past performance files on the pointed to folder where results files have not yet been imported to create a JCapper data file. The

date of creation appears as part of the file name after the DO_1_ file name prefix.

 

·         DO_2 WorkFile

This type of WorkFile contains a list of all JCapper Data files on the pointed to folder used during the Build Database routine run at a single point in time. A JCapper Data file (extension .DAT) is a special data file containing both past performance as well as results data. Note- JCapper Data files can be loaded in the Card Loader whenever you want to study old race cards and see race results right on the HTML Report- a great learning tool if there ever was one! One further note- The date of creation appears as part of the file name after the DO_2_ file name prefix.

 

·         MISSING_ WorkFile

This type of WorkFile contains a list of missing XRD files based on the past performance data files of the selected file type on the pointed to folder. This type of WorkFile is used as the source for the Exception Report, viewable at the end of a Build Database routine.

 

·         DO_3.TXT Workfile

This type of WorkFile contains a complete list of every JCapper.DAT file found on the target folder. If

 

 

Some further notes about WorkFiles:

 

1. Since all WorkFiles are text files, they may be opened as needed with Notepad or any other text editor.

 

2. When running the WorkFile Builder as a separate process, after WorkFiles have been created you will see a message that simply says DONE.

 

 

Results File Importer

The Results File Importer can be started manually and used to import XRD Results. It works in the following manner: The user clicks the Select WorkFile and Import button. A dialog box opens up, allowing the user to open and run any DO_1 WorkFile on any drive or folder on the user's system. The user selects a WorkFile and clicks OPEN. The Results File Importer then opens the DO_1 WorkFile and merges each past performance data file with its matching counterpart XRD results file and creates a resulting JCapper DAT file for each track and date. As this is taking place, the track and date will be displayed on the face of the Results File Importer. After the last results file has been imported, a 'Done' message is displayed to the user. An option button is present on the face of the Results File Importer that allows disabling prompting after each file (the system default) or enables prompting after each file (for that rare occasion where the user wants to be sure and see first hand that results were imported for a particular card. Also present is an Exception Report button. When clicked, the user may select a MISSING_ WorkFile to display a list of missing XRD files on screen

 

Main Module Create PlayList File Button

The final step of a Build Database Routine in JCapper is the creation of a PlayList File. A PlayList file is a comma delimited text file used by the Data Window. PlayList files contain a complete record for every starter in every race for all the tracks and dates in a JCapper Database. Users of such products as Microsoft Access or Microsoft Excel may wish to import a PlayList File just to see what's there or to take a stab at doing some research of their own. Of course the JCapper Data Window used with the Profile Table Interface does a pretty fair job of analyzing a PlayList file but hey, to each his own.

 

Clicking the Main Module Create PlayList File Button results in a dialog box being opened. This dialog box allows the user to point to any drive or folder on the system to select and open a DO_2 WorkFile. After selecting a DO_2 WorkFile, and clicking OPEN, the following events take place: Unless the Append to Database Setting has been checked, the current PlayList file in the pointed to folder (file name PL_Profile.txt) is cleared. Each JCapper Data file in the DO_2 WorkFile is opened and read. A new entry is created for every starter in every race at every track and date in the JCapper Database. When the last horse in the last race has been processed, a message is generated that says 'PlayList File Created' and the user is given a chance to view an exception report.

 

Manual Steps for Creating a JCapper Database

In addition to creating a JCapper Database by clicking the Build Database button, databases can be built by running each step in the chain behind the Build Database button as a separate process.

 

1. Run the WorkFile Builder

2. Run the Results File Importer

3. Run the WorkFile Builder a Second Time (That's right- run it again)

4. Create PlayList File

 

The steps for building a JCapper Database manually are: WorkFile Creation, Results File Importing, WorkFile Creation a second time, and finally, PlayList File Creation. When building a database manually, it is necessary to perform WorkFile Creation a second time so that the JCapper Data files created in Step 2 are captured in the new DO_2 WorkFile.

 

 

Folder Structure

After gaining some genuine familiarity with the program, I recommend that each user devise a workable folder schema for dividing up data and results files. Much depends on the number of tracks played in a given time period by the user. It may (or may not) be practical for a user to store all data and results files in a single folder for an entire year. There are several things worthy of consideration here. These can be outlined as follows:

 

            Folder Structure Considerations

 

            1. Speed of Program Execution

                * Database Build Time

                * Data Window Query Time

                * Race Card Browse and Load Time

 

            2. Data Relevancy

                * Inclusion of Validation Data

                * Quick Access to Current Data

                * Avoidance of Stale Data

 

Speed of Program Execution

One thing a user must consider is program execution speed. Obviously, the greater the number of data files, the longer it takes to run the various parts of the program.

 

Database Build Time

On most machines, a 200 race card database can be created by a Build Database routine inside of 15 minutes. A 400 race card database can be built inside of 30 minutes. Unless the Append Setting is used, when a database is built, it is built from scratch. The existing PlayList file on the pointed to folder is cleared and the entire list of JCapper.DAT files is reloaded. This design does serve a purpose: This model insures data integrity. Under a system where fresh race cards are appended to a database, it is possible to introduce the same race into the database more than once. The drawback to the rebuilt from scratch model is that fresh results files must be imported daily After the number of race cards grows to a certain point, most users running a Build Database without the Append Setting start the Build Database routine and then turn their attention elsewhere while the routine completes itself on its own. Ultimately, it is the user who decides when this process is taking too long. When that point is reached, it's time to point to a new folder.

 

Suggested Strategies for Reducing Database Build Time

 

* Change the Default Data Folder

Create a new folder to use as your Default Data Folder. Then using the Data Folder Manager - point JCapper at your new Default Data Folder. Repeat as many times as is necessary throughout the year to keep Database Build Time within acceptable limits. The trade off here is speed vs. database size. You want to maintain a nice mix of both speed of program execution along with sufficient database size so that you satisfy the need to have sufficient data for performing Data Window Research and UDM creation and validation.

 

* Folder Structure

Personally, I create a new Default Data Folder at the start of each new quarter and let it go at that. It works just fine for me. I know of a handful of players that simply store all past performance and results files for each entire year on a Year Folder. Other players have reported good success using a Year/Track folder structure. And I know of a few others who use a Year/Month folder structure. Ultimately, decisions about workable folder structure rests squarely on the shoulders of each user. JCapper supports many possible workable folder structure frameworks. If you start out with one framework and you don't like it, you can always change to another.

 

 

 

 

Data Window Query Time

 

JCapper in SQL Mode

SQL Mode was introduced in the summer of 2009. The key benefit to running JCapper in SQL Mode is program execution speed for Data Window queries. Even on very slow machines, SQL Mode Data Window Queries for most SQL UDMs run against sizeable databases (tens of thousands of races) typically see results returned to the user in just a few seconds. If you aren’t running in SQL Mode yet, I highly recommend you give it a try. Response to SQL Mode (once users get past the initial learning curve) from the JCapper user community at large has been overwhelmingly positive.

 

JCapper in PlayList File Mode

Even on very slow machines, a Data Window query run on a 200 race card database PlayList file takes about two minutes to complete from the time the PlayList file is opened. A query on a 400 race card PlayList file will take about twice that time. As more and more race card files are added to a PlayList file, eventually, Data Window query time becomes an issue to the user. The length of Data Window query time considered acceptable will vary from one user to the next. At some point, Data Window query time eventually reaches the point where the user will want to shorten it. Several strategies may be implemented to shorten Data Window query time. They are presented below:

 

* Create a New Default Data Folder

Simply Create a new folder to use as your Default Data Folder. After creating the new folder, use the Data Folder Manager to point JCapper to your new Default Data Folder. Repeat as many times as is necessary throughout the year to keep Race Card Browse and Load Time within acceptable limits. Personally, I break my own data folder structure up into four equal parts each year- one for each quarter.

 

* Create Quick Index Files

You can use the Data Window’s Quick Index File Export function (or the Quick Index File Extract Tool) to extract an Index File from any of your PlayList files.

 

A Quick Index File is identical to a PlayList file, but only contains starters in it that match the parameters selected by the user at build time. The Data Window’s Quick Index File Export function –when combined with UDMs - allows users to build Quick Index Files where the data in the resulting file contains specific factor combinations involving factor numeric value, rank, and gap for virtually every factor in the program. Quick Index Files can be built that contain only the starters from an individual trainer, only those starters from an individual track, and only those starters where rank equals a selected value for a selected factor. A Quick Index File created where JRating Rank = 1 will only have those starters that are the top ranked JRating horse from each race. Given that 8 horses is the average field size for all races, a Data Window query run on such an Index File will be approximately 8 times faster than the same query run on the PlayList file from which the Index File was extracted.

 

 

Race Card Browse and Load Time

The tools found on the Card Loader that enable browsing and loading of race card files may be impacted by the presence of too many race cards on the Default Data Folder. When only a handful of race cards are present on the Default Data Folder, the Browse and Load All Cards for Race Date function will find and load all race cards for the date keyed in by the user almost instantly. Add more race cards, and the process slows somewhat. Add 200 race cards to the pointed to folder, and on most machines, the process takes 20-30 seconds. At some point, after enough race cards have been added to the pointed to folder, the process reaches a point where it simply takes too long for the player's liking. Of course that point varies from player to player. But add enough card files to a folder, and that point will eventually be reached. Again, strategies do exist for reducing Race Card Browse and Load Time. They are presented below:

 

* Create a separate folder named TodaysRaceCards and use it as a place for Today's Race Card Files Only. At the start of each race day, move yesterday's race card files to your current Default Data Folder where race card and results files will be permanently stored. Then download and extract the new day's race card files to the TodaysRaceCards folder and start the process all over again. Result? Race Card Browse and Load Time becomes a non-issue.

           

* Simply create a new folder to use as your Default Data Folder. Then, using the System Settings/Set Default Data Folder function, point JCapper to your new Default Data Folder. Repeat as many times as is necessary throughout the year to keep Race Card Browse and Load Time within acceptable limits.

 

 

Corrupt Data Files

Every great once in a while a past performance data file will either become corrupt or already be corrupt at the point in time it is downloaded from a data provider. Most often the cause of the corruption is an error introduced into the file during its creation by the third party data provider. One error I've repeatedly seen is the name of a breeder or trainer in a numeric field reserved for the number of trainer wins. The database builder contains logic in it to test for such things. Whenever bad data is found to exist in a past performance data file during a Build Database routine, making it impossible to make numeric calculations for creation of derived data, the Database Builder is programmed to terminate the Build Database routine and generate an error message like the one shown below.



 

Corrupt File Encountered During DB Build Screenshot

 

 

 

Recovery from Corrupt Data File Errors

What are the recovery steps to take in the event of an error generated by corrupt data file? The easiest recovery path involves removal of the offending data file and re-running the Build Database routine from scratch. The exact recovery steps are dependant upon the Append to Database During Database Build setting in the System Settings/System Definitions area of the program. The following table outlines the exact recovery steps needed for each case:

 

Recovery Path- Append to Database during Database Build IS checked

1. Delete the WorkFile file named DO_3.TXT

2. Delete the PlayList file named PL_PROFILE.TXT

3. Delete the past performance data file for the track and date named in the error message.

4. Delete the XRD results file for the track and date named in the error message

5. Delete the JCapper.DAT file for the track and date named in the error message

6. Go into System Settings/System Definitions, check the Append to Database During Database Build box, and hit SAVE.

7. Re-Run the Build Database Routine

 

Recovery Path- Append to Database during Database Build is NOT checked

1. Delete the WorkFile file named DO_3.TXT if present

2. Delete the PlayList file named PL_PROFILE.TXT

3. Delete the past performance data file for the track and date named in the error message.

4. Delete the XRD results file for the track and date named in the error message

5. Delete the JCapper.DAT file for the track and date named in the error message

6. Re-Run the Build Database Routine

 

 

 

 

            --Jeff Platt 04-27-2010