Sunday, 8 December 2013

True/False and Yes/No Data

In addition to numeric and character string data, there are also variables that are set to one of two opposites, namely True or False or Yes or No.

The variables set to Yes or No are actually one character variables with the values of either "Y" for Yes or "N" for No. Examples of these from the Horse Data drop down are H:DOK for "distance okay" and H:FOK for "first up okay". To test these we need a rule that returns TRUE in the event of a "Y" and FALSE otherwise. The rules to do this are as follows:

H:DOK=="Y"

H:FOK=="Y"

Note the double equals sign which tests for exactly equal to.

There are also variables in the System Selector Data drop down that equate to TRUE or FALSE, namely HOME, SAME and LSFAV. These are for "home track", "same track as last start" and "last start favourite". Since these already equate to TRUE or FALSE using them in rules simply requires them to be listed on a line by themselves with no need for any separators or comparisons.

You may be wondering why there is no variable for the old "metrop last start" rule. The reason for this is that there is a variable in the Last Start Data drop down called F:M. This variable is set to the letter "M" if the last start is on a metropolitan track so the rule to test for "metrop last start" is as follows:

Upper(F:M)=="M"

Note this variable is also set to "P" if the last start was on a provincial track so the following rule will test for "provincial last start":

Upper(F:M)=="P"

There are a few other Y/N variables in the Horse Data drop down like "improver okay" and "winning form okay which relate to Peter Bent's form analysis methods as described at:

http://www.capitalinfo.com.au/peter-bent-form-analysis.html

There are also Y/N variables for Tote Pro exotic standouts but it is unlikely you will use these in systems.

Finally there is a Y/N flag for "Active" races. Few users will use this but if you do set certain races to non-active then you can exclude them in system tests using the following:

R:ACTIVE==”Y”

Note the above returns TRUE if the active flag is set to Y, otherwise it returns FALSE.