Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Datenmodell

Begonnen von Beaker s.a., November 13, 2025, 15:56:51

⏪ vorheriges - nächstes ⏩

Beaker s.a.

Hallo,

Z.Zt. beschäftige ich mich mit einem Projekt zur Berechnung/Auswertung von
Statistiken der NHL (National Hockey League, Eishockey).
Am Anfang hatte ich ein gutes Dutzend Werte, die ich per D-Funktionen (Count,
Avg) in ungebundenen Feldern in einem Form dargestellt hatte. Da das zwar ganz
gut funktioniert hat, war ich damit nicht zufrieden, vor Allem wegen der zu
geringen Anzahl an Werten. Nun habe ich ca. 70 Werte (Var, StdAbw u.w.), die
mit Funktionen wie dieser berechnet werden
Public Function CountWinsTeamsByLocation( _
        ByVal sSeasonIDs As String, _
        ByVal lLocation As Long) As Long
'alle Home- bzw. Awaysiege eines Teams
'Filter: Team, Location (Home/Away)

    CountWinsTeamsByLocation = _
            BuildStatisticQueryMatchesQuotes( _
                sAggregat:="Count(BSQ.MatchID)", _
                sSeasonIDs:=sSeasonIDs, _
                sMatchDate:=CurrentMatchDate, _
                lTeamHome:=CurrentTeamID, _
                lMatchResult:=lLocation, _
                lLocation:=lLocation, _
                bOnlyOneTeam:=True)

End Function
sSeasonIDs kann eine einzelne Season oder eine Kombination mehrerer sein (String
weil mit IN gefiltert wird). Diese Funktion kann somit 2 Werte pro Season(s)
zurückgeben. Die übergebenen Parameter werden mit weiteren aus öffentlichen
Properties gezogenen an einen SQL-Builder weitergegeben. Dieser erstellt daraus
einen SQL-String. Die Rückgabe erfolgt dann über ein RS-Feld
Set rst = CurrentdbC.OpenRecordset(ssql, dbOpenSnapshot)
BuildStatisticQueryMatchesQuotes = Nz(rst.Fields(0), 0)

Worauf ich jetzt hinaus will. Das Form, dass die Werte anzeigen soll bestimmt per
Auswahl (Seasons, Teams) die nötigen Parameter. Und obwohl die komplette Berechnung
aller Werte und Zuweisung zu ungebunden Formfeldern nur knapp 25Sek. dauert, möchte
ich das eigentlich nicht. Ich würde die Werte lieber in eine Tabelle schreiben, an
die ich das Form dann binden kann.

Und an dieser Stelle komme ich zur .Zt. nicht weiter, und würde mich über eure Unter-
stützung freuen. Ich dachte an zwei Tabelle (1:n), - "StatistikFunktionen" (1 DS für
jede Funktion) und "StatistikWerte" (n DSe Parameter- bzw. Filterbedingt). Nun grübele
ich schon seit zwei Tagen über die Struktur der beiden Tabelle nach (Schlüssel sind klar).
Was auch klar ist, ist ein Feld für den berechneten Wert in der n-Tabelle. Was mir noch
einfällt wäre ein Kennzeichen für das verwendete Aggregat in der ersten Tabelle. Aber
ansonsten, - viel Nebel.

Habt ihr Ideen/Vorschläge für weitere Felder?

gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

Beaker s.a.

Fällt mir gerade noch ein. Ich bräuchte wohl noch ein eindeutiges Feld
in der n-Tabelle. Bloss, was nehme ich da um den DS per VBA/SQL zu
finden?
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)