Designed to minimise the administration that accompanies running a scout troop. This includes attendance logging, automatically generated patrol grading forms & a smart patrol point calculator. Displays data in an easy to read format.
Utilises Google forms & sheets to allow for simple, UI based modification and customisation.
Written in Google Apps Script, a JavaScript platform in the cloud.
Learn more: https://developers.google.com/apps-script
- Collect attendance data
- Assess uniform & other gradeable factors
- Calculate and award points
- Display results in an easy to read format
All data is read from the master form as entered below. Upon submission, the necessary data ecosystem is generated by form-manager.gs
—handling additions, removals & edits to the register.
These operations execute concurrently upon submission of the master form:
- Attendance is logged to the associated spreadsheet.
- If necessary, a row is created for the member.
- Contents of the patrol specific form is generated to reflect the most recent register & the member's attendance.
Following weeks of usage the linked spreadsheet will populate as follows.
Designed to be quick and easy to use. With all additions, edits and removal of members/patrols done via a graphical interface.
A patrol is defined by a Title and description
item:
- The patrol name is set per the headers' title.
- The description can be left blank.
- Create more patrols by adding additional
Title and description
items:- Ensure each
Title and description
is followed by aMultiple choice grid
.
- Ensure each
The subsequent Multiple choice grid
is interpreted as the patrol itself:
- Leave the title blank.
- Each row defines a patrol member:
- The patrol member's name is set by the row's name
- To attach a rank to a patrol member, preface their name with:
PL
— Patrol LeaderAPL
— Assistant Patrol Leader
- Columns should be set to:
Present
Absent
Notified Absence
(optional)
![]() |
![]() |
Select "Add title and description" and choose a name | The subsequent item should be a "Multiple choice grid" |
![]() |
![]() |
Ensure "Present" & "Absent" are included as columns | The form should appear like this |
- Make a copy of each of the files within the scouts-grading G Drive directory.
- G Drive is able to "Make a copy" of all files in one operation if all 3 files are selected.
- Place the new files in a folder of their own to avoid clutter. (optional)
- When run,
form-manager.gs
will generate additional forms which are placed in the same folder as the form defined bymasterFormId
. (see below)
- When run,
- Open
Copy of scouts-grading
and navigate to File > Project properties > Script properties.- Feel free to rename the file.
- Select + Add row twice and define both
writeSheetId
andmasterFormId
. - Copy the id from
Copy of Troop Records
andCopy of Troop Register
and set the value of the properties respectively.- The id of a document is the 44 char. hash in the document's URL.
- id in bold: docs.google.com/spreadsheets/d/1HF3J1_hjian3oiD2nl1YvB6eLxw8kj1wYigKhzROZP8/edit
- The id of a document is the 44 char. hash in the document's URL.
- Open
setup.gs
from the list on the left and navigate to Run > Run function > triggerSetUp - Verify the app and grant requested permissions.
The spreadsheet defined by writeSheetId
will be populated upon the first submission of the form defined by masterFormId
.
Learn how to clone, pull, and push Apps Script projects on the command line using clasp.
The code is available under the MIT license.