Ariadne index page

 

Ariadne - Technical description

A510

Run-event monitoring and publication

Description

This screen displays the run-events. The screen is actualized each T100!Refresh-rate-eventmonitoring , or by clicking the button 'Refresh'. The last 18 run results are written to a html file, for publication in a html-browser.

The refresh trigger for run-event processing comes from the F540 form. During event execution this form need to be active, in order for the runs to be processed.

Screenshot

Access path

F000-Menu  
F540-Run-events  
P600-Event-processing  
P541-Publication-screen-html  

Function structure

Form Control Subform Query Table Attribute
F540-Run-events     Q540-Processed-run-events T020-Status-type
T110-Program-block
T400-Race
T450-Category-in-racet
T500-Competing-unit
T510-Run
Q520-Total-penalty-points
competing-unit-id
      Q520-Total-penalty-points T530-Gate-negotiation  
  button
ButtonCU
connects to:
F510-Competing-unit
     
  button
ButtonRefresh
action:
P610_Process_last_
run_events
requery Q540-Processed-run-events
P541_Publication_screen_html
     
  button
ButtonEventFaultList
displays:
Q610-Run-event-fault-list
Q610-Run-event-fault-list T610-Run-event-fault
T630-Run-event-fault-type
T632-Run-event-type
 
  button
ButtonClose
       
  Event Action Query Table Attribute
  timer
every Q100!Refresh-rate-eventmonitoring seconds

P610_Process_last_
run_events
requery Q540-Processed-run-events
P541_Publication_
screen_html
     
  on load set timer to Q100!Refresh-rate-eventmonitoring Q100-Current-competition T100-Current-competition  

In Q540 the shadow events are filtered out, as these give double competing unit lines in the run monitoring screen.

P600-Event-processing

Module Function Action Query Table Attribute
P600-Event-processing P610_Process_last_
run_events

  T100-Current-competition  
      Q600 1) T600-Run-event-buffer  
    P620_Run_event_check      
    P622_Valid_ start_number Q500 1) T500-Competing-unit  
    P624_T510_ Startstatus_OK Q510 1) T510-Run  
    P626_T510_ Finishstatus_OK Q510 1) T510-Run  
    P628_T510_ Initstatus_OK Q510 1) T510-Run  
    P640_Process_run_
event_in_T510
  T510-Run  
    P650_Write_ run_event_to_T610   T610-Run-event-fault  

1) Dynamical query in the program module

Design decision (29 Nov 02)
It is decided that every entry/ competing unit always has two T510-Run records, each for both series. (Also when the related event has only one series.

Design decision (08 Feb 02)
The status-time-stamp changes with every change in status. When sorting the run records for publication on status time stamp, this gives confusion. For this reason, a start-time-stamp is added, which is actualized with a start run-event, and with an initialization. The run-events for publication are sorted on this start-time-stamp. (The start-time-stamp is also required for calculation of the event-start intervals)

run-event processing

The normal processing is:

A valid run-event has:

  • a start number > 0
  • a series = 1 or 2
  • a start number which is assigned to a competing unit

Validation and processing of a start run-event

  • run-event-type-id = 1
  • elapsed time = 0
  • start-number and series has exactly one (1) T510-Run record
  • T510!status-id =0 ('not started') or = -1 ('initialized')
  • >> set the T510!start-time-stamp, and set T510!status-id to 1 ('started')

Validation and processing of a finish run-event

  • run-event-type-id = 2
  • 5000 < elapsed time < 600000 milliseconds
  • there is one (1) T510-Run record for the start number / series, with the status = 1 ('started')
  • >> set T510!elapsed-time = T600!elapsed-time / 1000, and set T510!status-id to 2 ('finished')
  • >> when a T530-Gate-negotion record is present for the T510-Run record, set T510!status-id = 3 ('complete')

Validation and processing of a initialization run-event

  • run-event-type-id = 3
  • elapsed-time = 0
  • >> set T510!elapsed-time to 0, set T510!status-id = -1 ('initialized')
  • >> delete eventual T530-Gate-negotiation record for the T510-Run record.

When a run-event is not valid, write it to the T610-Run-event-fault

P540-Publication-screen

Module Function Action Query Table Attribute
P540-Publication-screen-html P541_Publication_
screen_html
- Open file
- write html header
- write competing unit lines
- write html footer
- close file
Q545-Publication-screen T110-Program-block
T400-Race
T450-Category-in-race
T500-Competing-unit
T510-Run
Q503-Competing-unit-name
Q520-Total-penalty-points
Q546-Race-total
 
  P542_Publication_
screen_header()
- write html header
- set the refresh interval
Q100-Current-competition T100-Current-competition  

The table cells are formatted with cascading style sheet classes. These classes are defined in the css-file Ariadne.css in the Ariadne directory. In this way the formatting can be controlled outside Ariadne.

In Q545, shadow events are filtered out (when present they give double output lines). Run start events are filtered out, because of the low information value in relation to the limited number of lines which can be displayed on the screen.

The sorting order of Q545 is the start time stamp.


Change history

date version change
19-11-02 1.5 Ariadne 4.1, text converted to html