{% extends "layout.twig" %} {% set errorMessages = { 'no_file': 'No file was uploaded.', 'too_big': 'The file is larger than 5 MB.', 'partial': 'The upload was interrupted. Try again.', 'upload_invalid': 'Upload validation failed.', 'not_xlsx': 'That doesn’t look like an .xlsx file.', 'parse_failed': 'Could not parse the workbook. Open it in Excel to confirm it’s not corrupted.', 'too_large_payload': 'The parsed workbook is too large for a preview session (limit: 2 MB). Split sheets or shorten task lists and try again.', 'expired': 'Your previous import session expired. Please upload again.', 'nothing_selected': 'No sheets were selected to import.', 'server': 'Server upload error.', 'size': 'File size is invalid.', 'unknown': 'Upload failed.', } %} {% block content %}

Import sprints from XLSX

Upload the team’s Tool_Sprint Planning workbook. Each tab is parsed as one sprint; the next step lets you confirm targets, names, dates, and review the diff before committing.

{% if error != '' and errorMessages[error] is defined %}
{{ errorMessages[error] }}
{% endif %}
How are cell colours mapped to status?
  • Greens (e.g. Excel “Green”, light pastel green) → abgeschlossen.
  • Yellows and oranges → gestartet.
  • Reds → abgebrochen.
  • White, blue, or no fill → zugewiesen (default).

Workers and tasks are matched to existing rows by name (case-insensitive). Anything not yet in the database is created.

Cancel
{% endblock %}