Remis-Saetze mitfuehren: neue Spalten, an denselben Stellen geschrieben wie die Tore

Meldung von Sven (DTFB-IT): "In der Tabelle sind Saetze falsch." Die
Satz-Spalte der Tabelle summiert teamspiel_*_punkte, und die zaehlen nur
ENTSCHIEDENE Saetze -- unentschiedene Saetze verschwanden spurlos. Aus
"6:4 5:5 2:6 6:3" wurden 2:2 Saetze, das 5:5 fehlte in jeder Summe.

Vorbild ist die Spielerstatistik, die mit saetze_unentschieden genau dieses
Feld schon fuehrt. Neue NULL-bare Spalten, NULL heisst unbekannt (Bestand vor
der Erfassung von Satzergebnissen), nie wird 0 unterstellt:

- teamspiel.teamspiel_saetze_remis: unentschiedene Saetze des Spiels, eine
  Zahl, fuer beide Seiten gleich
- begegnung.saetze_remis: Summe ueber die Spiele; NULL, sobald ein Spiel
  unbekannt ist (gleiche Regel wie bei den Toren)
- team.saetze_remis: Summe ueber die ausgetragenen Begegnungen, in
  teamstatistikAktualisieren mitberechnet

Berechnet wird der Wert in tools.php (saetzeRemisFuerSpiel, analog zu
toreFuerSpiel: nur bei punktetyp 1 mit Satzergebnissen bekannt, sonst NULL)
und an denselben beiden Stellen geschrieben wie die Tore: Speicherschleife
adminSaveBegegnungSpielplan() und begegnungenAktualisieren().

Migration: #306 ist nicht ausgeliefert, Datenbankversion 123 gehoert bereits
zu diesem Zweig -- die neuen Spalten erweitern deshalb den bestehenden
<123-Block in database/update.php (mit eigenen Spalten-Guards, damit eine
Instanz, die den bisherigen 123er-Stand schon traegt, nur das Fehlende
nachzieht) und die CREATEs in script.php.

Anzeige: im Je-Satz-Modus weist die Satz-Spalte der Tabelle die Remis-Saetze
kompakt mit aus ("6:5 (4)"), mit erklaerendem title (neuer Sprachschluessel
COM_SPORTSMANAGER_SETS_DRAWN); die Spaltenzahl waechst nicht. Ausserhalb des
Je-Satz-Modus bleibt team.saetze_remis NULL und die Anzeige unveraendert.
getTabelleSpieltag liefert den Wert je Spieltag ueber ein Subselect, das nur
im Je-Satz-Zweig erzeugt wird; die JSON-Ansicht reicht die Teamobjekte
unveraendert durch und traegt den Wert damit automatisch.
This commit is contained in:
svennickel
2026-09-10 07:26:31 +02:00
parent 7b8fbe6f45
commit ab6b91f2b5
8 changed files with 88 additions and 12 deletions
@@ -159,6 +159,7 @@ COM_SPORTSMANAGER_DEFEATS_SHORTCUT="N"
COM_SPORTSMANAGER_GOALS="Tore"
COM_SPORTSMANAGER_GOALS_SHORTCUT="T"
COM_SPORTSMANAGER_SETS="Sätze"
COM_SPORTSMANAGER_SETS_DRAWN="Unentschiedene Sätze: %d"
COM_SPORTSMANAGER_POINT="Punkt"
COM_SPORTSMANAGER_POINTS="Punkte"
COM_SPORTSMANAGER_SETS_SHORTCUT="S"