JCapper Message Board
|| Scratch Bot issue
|The scratch bot is suddenly only pulling scratches from one folder. It always pulled from all 3 before. I have searched the board and system definitions and can not find where to adjust it back to all three folders.|
|There are two settings in the Enhanced Settings Module that control Scratch BOT behavior:|
1. Main Module Calc Races Button Display
Element Type: Drop Down
Purpose: Controls whether or not the Calc Races button in the Main Module and the XML button in Scratch BOT renders as a single button or whether it renders as 3 separate buttons - one per each Data Folder that you can set up in the DFM.
0 Multi-Folder Select - Causes the Calc Races button in the Main Module and the XML button in Scratch BOT to render as 3 separate buttons.
1 Single Cmd Button - Causes the Calc Races button in the Main Module and the XML button in Scratch BOT to render as a button.
2. Scratch BOT
Element Type: Drop Down
Purpose: Controls the type of parse routine used by Scratch BOT when the XML Button is clicked.
0 All Scratches in the XML – When this option is selected, Scratch BOT parses the entire xml stream at once.
1 Scratches For Loaded Card Files Only – When this option is selected, Scratch BOT parses the xml stream one track at a time and only for the track codes currently loaded into JCapper.
|on another note about the scratch bot|
jeff, can you please explain the "refresh" buttons purpose in the MANUAL SCRATCHES mode. it seems sometimes in turf races that when i use ONLY the scratch bot a horse is not scratched, however if i use the "refresh" feature in manual scratch mode it is removed, is this a bug in the program (i am using build 157 from 8/11)
|Here's a link to the Manual Changes Module Help Doc: |
Bring up the help doc and scroll down until you find a headline labeled The Refresh Button.
The section about the Refresh button starts off with the following paragraph:
"This section is intended for those users who leave the Manual Changes Module open while they concurrently run other JCapper modules capable of picking up scratches- either Scratch Parser or Scratch Bot. If you do not plan on running Scratch Bot or Scratch Parser while the Manual Changes Module is open and running you can skip this section."--end quote
I should probably interrupt the reading of the help doc here and make the following statement:
I wrote that section of the help doc back in 2004. At the time the only Modules in JCapper that had the ability to process scratches were: The Manual Changes Module, Scratch Bot, and the Scratches Parser.
The Live Play Module (when operated in live tote mode) is the other module in JCapper that has the ability to process scratches. But it didn't exist back then. So it's not mentioned in the help doc.
Ok, with that out of the way...
The section about the Refresh button in the Help Doc continues with the following:
"Clicking the Refresh Button causes the Manual Changes Module to take the following actions:--end quote
1. All Unsaved Scratches Information in memory is written to the database without overwriting saved changes information already residing in the database. Scratches are appended to the scratches file.
2. Unsaved Surface and Distance changes in memory are purged from memory and are NOT written to the database.
3. Scratches Information is then read from the database and are placed in memeory.
4. Surface and Distance changes are then read from memory and are placed in menory.
5. Information for the Current Race is then re-displayed.
Purpose of the Refresh Button
There are other modules in JCapper capable of updating the database with fresh scratches and surface/distance changes. The Scratch Parser parses the Bris web pages as directed by the user and writes fresh scratches to the database. Scratch Bot, once started, runs in the background continually scanning the Bris web pages for fresh scratches and surface changes, and updates the database as new changes are discovered.
Naturally, JCapper has to be able to handle the case of a user who runs combinations of the Manual Changes Module, Scratch Parser, and Scratch Bot concurrently. The logic behind the Refresh Button found in the Manual Changes Module allows this to happen.
Let's illustrate using the example of a user who launches the Manual Changes Module while Scratch Bot is running in the background. When it first loads, the Manual Changes Module gets all of its start up information by reading the database. It then displays this information as each new current race is navigated to by the user and as changes are saved back to the database by the user.
At the same time, Scratch Bot is also writing its own information back to the database. When Scratch Bot finds a fresh scratch or a race taken off the turf, it writes the changes to the database and then generates a horse scratched or race taken off the turf message alerting the user to the presence of the change. (For a complete discussion of how Scratch Bot works read the section in the User's Guide dedicated to Scratch Bot.)
The Manual Changes Module needs a mechanism for getting updated changes information from the database when this case happens. The Refresh Button is that mechanism. A user running Scratch Bot in the background concurrently with the Manual Changes Module can see the horse scratched or race taken off the turf message generated by Scratch Bot and then can immediately bring the Scratch Bot generated changes into the open instance of the Manual Changes Module simply by clicking the Refresh Button.
To summarize, there are two cases where the user should click the Refresh Button in the Manual Changes Module:
1. Scratch Bot and the Manual Changes Module are being run comcurrently. The user should click the Manual Changes Module Refresh Button before doing anything else in the Manual Changes Module after seeing a Scratch Bot generated scratch or surface change message.
2. Scratch Parser and the Manual Changes Module are being run concurrently. The user should click the Refresh Button in the Manual Changes Module before doing anything else in the Manual Changes Module after clicking the Parse Scratches Button in the Scratch Parser.
There is no need ever to click the Manual Changes Module Refresh Button unless either Scratch Parser or Scratch Bot is being run at the same time as the Manual Changes Module.
Users who adopt the practice of closing the Manual Changes Module before launching either the Scratch Parser or Scratch Bot and who close both the Scratch Parser and stop Scratch Bot before launching the Manual Changes Module do not need to worry about clicking the Manual Changes Module Refresh Button. Of course, there is never any harm in clicking the Refresh Button; if no new changes from another module exist in the database, current race information in the Manual Changes Module is merely re-displayed."
Now that I've posted the help doc info and read through it, I realize it might be a good idea if I were to do a write up laying out the most common possible cases involving a user who has an open program window with the Manual Changes Module in it - and who also and at the same time has a another open program window with either Scratch BOT or the Live Play Module in it.
I started doing that yesterday afternoon but I'm not finished yet. Getting the nuances right is actually quite involved.
Once I get it finished I'll come back to this thread and post an update.