Skip to main content

Parameter Parsing Listing Files

For more complex actions, use RunScore Macro files (.rsm), which are controlled through Parameter Passing listing files that start with the @ symbol. These listing files call RSM files and supply the required variables to direct the macro processes.


RSM Files

An .rsm file performs a single, reusable task — similar to a simple listing file, but with placeholders instead of hardcoded values. The macro replaces %1, %2, %3, … with corresponding parameters at runtime.

Limits and validation:

  • An RSM file supports up to 35 parameters.
  • It is highly recommended to call the RSM with the exact number of parameters to minimize errors.
  • If a parameter is missing, the runtime validator will issue a warning and replace the missing value with an empty string.

Example: resultsToRR.rsm

The following RSM file sends results to Race Roster for any race name and results race ID passed as parameters:

*/ Upload Results to RaceRoster
Usage: resultsToRR.rsm <resultsID> <RaceName>
*/
External Report To RaceRoster
Records Per Page 100000
No Page Numbers
Header
##%1##
.End Of Header
Select Bib
> 0
AND
Select DNF
EQ
AND RACE
SW %2
Field BIB
Field FIRST NAME
FIELD LAST NAME
Field AGE
Field GENDER
Event Finish
minus GunStart
Field Header Gun Start Time
Time Format MM:SS.1
Event Finish
minus ChipStart
Field Header Chip Start Time
Time Format MM:SS.1
  • %1 is replaced with the Race Roster results race ID.
  • %2 is replaced with the race name prefix (e.g., 5K, 10K, Half).

@ Listing Files

@ listing files organise a series of actions into a single click. They contain no commands — only a list of RSM files with their parameters.

Example: @SendResults2RR.lst

The following file sends results for three races (5k, 10k, Half Marathon) to Race Roster in one operation:

* Upload Results to RaceRoster
resultsToRR.rsm 227867 5k
resultsToRR.rsm 227868 10k
resultsToRR.rsm 227869 Half
tip

RSM and listing files can use custom variables defined in Entries.ini instead of hardcoded values. See Custom Variables for details and a worked example.