How rhine227/ims_automation-main works
IMS Automation is a desktop tool for turning maintenance-checklist Excel templates into completed workbooks. The principal workflow is: launch the template selector, choose a workbook, convert legacy .xls files when needed, extract sheets/categories/tasks, save intermediate JSON, then collect initials, date, and task statuses and write the completed data to an .xlsx file. The domain stages and the shared data-model layer are shown separately. The README only says to run main.py; task-completion details are based on partial excerpts, so uncertain internal wiring is omitted.
Main entry points: template_selector.py Template selector · excel_processor.py Workbook processor · task_completion.py Task completion UI · main.py Application entry
Components 11
Application launch
- Application entry
main.py
Template processing
- Template selector
src/ui/template_selector.py - App settings
src/config/settings.py - Excel converter
src/core/excel_converter.py - Workbook processor
src/core/excel_processor.py
Checklist completion
- Task completion UI
src/ui/task_completion.py
Domain model
- Checklist models
src/core/data_models.py
Other components
- User
- Selected workbook
- Checklist JSON
- Completed workbook
Connections 16
- User → Application entry: launches
- Application entry → Template selector: launches
- Template selector → App settings: reads paths
- User → Template selector: selects template
- Template selector → Selected workbook: chooses file
- Template selector → Excel converter: converts .xls
- Excel converter → Selected workbook: writes .xlsx
- Template selector → Workbook processor: processes workbook
- Workbook processor → Selected workbook: reads workbook
- Workbook processor → App settings: reads rules
- Workbook processor → Checklist models: creates records
- Template selector → Checklist JSON: saves JSON
- Template selector → Task completion UI: launches UI
- Task completion UI → Checklist JSON: loads and deletes
- User → Task completion UI: enters checklist data
- Task completion UI → Completed workbook: writes workbook