Club Operations Automation Suite

Court Light Operations Automation

A reliable workflow that records court-light usage, calculates monthly member charges in Excel, and uploads validated results to Sytech while keeping every stage traceable and safe to rerun.

Operational Problem

Court-light sessions involve multiple members, exact usage times, guest exclusions, monthly calculations, and a final upload to the club's management system. Handling those transitions manually creates opportunities for missed records, duplicate charges, and difficult recovery when a step is interrupted.

Three-Step Workflow

1. Record Court-Light Usage

  • An authorized Google Apps Script web app captures each session.
  • Staff enter the date, court, and 24-hour start and end times.
  • A searchable canonical member list prevents ambiguous selection.
  • Usage minutes are allocated equally among the selected members.
  • INVITADO entries are retained as non-billable guests.
  • Completed records are saved to Google Sheets for controlled processing.
Court-light usage recording web app with date, court, time, and member selection
Demonstration media coming later No member or operational data will be shown until a sanitized recording is available. assets/gifs/court-light-recording.gif
Recording a court-light session with canonical member selection.

2. Aggregate Minutes and Calculate Charges

  • discobolo court-light update YYYY-MM selects the processing month.
  • A dry-run previews the planned changes before any workbook is updated.
  • Only pending source rows are processed and grouped monthly by member.
  • The workflow validates and updates luz_de_cancha_2026.xlsx.
  • Excel formulas calculate the monetary charges.
  • Source rows are marked as exported only after the update succeeds.
Validated monthly court-light workbook update workflow
Demonstration media coming later The future recording will use sanitized workbook data. assets/gifs/court-light-workbook-update.gif
Previewing and applying a validated monthly workbook update.

3. Upload Charges to Sytech

  • discobolo court-light upload YYYY-MM selects the completed month.
  • Dry-run output and explicit confirmation protect the live upload.
  • Selenium automates the validated entries in Sytech.
  • Successful rows are skipped on reruns.
  • Success and error status are recorded for review and recovery.
Automated upload of validated court-light charges to Sytech
Demonstration media coming later The future recording will exclude private URLs and financial or member data. assets/gifs/court-light-sytech-upload.gif
Uploading validated monthly court-light charges to Sytech.

Engineering and Reliability

Reliable inputs

  • sync-members keeps the canonical selection list current.
  • Duplicate detection and source fingerprints identify previously handled records.
  • Guest exclusions ensure INVITADO usage is never billed.

Safe execution

  • Backups protect the workbook before material updates.
  • Recovery journals preserve progress across interrupted operations.
  • The repository's 72 passing tests cover the automation's core behavior.

Technologies

PythonTyperGoogle Apps Script Google Sheets APIOAuthopenpyxl SeleniumExcelunittest