Neuigkeiten:

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

Mobiles Hauptmenü

Parameterwert eingeben

Begonnen von Landogardiner, Januar 14, 2018, 19:49:15

⏪ vorheriges - nächstes ⏩

Landogardiner

Hallo,
in meiner Datenbank sollen erfasst werden, welche Teilleistungen die Teilnehmer erbracht haben und wieviele Creditpoints gesammelt wurden.
Es gibt drei Bereich für die Creditpoints.
Ich habe es geschafft (blutiger Anfänger), eine Abfrage zu erzeugen, in der für jeden Teilnehmer drei Felder angezeigt werden, in der die Summe der Creditpoints des jeweiligen Bereichs aufsummiert werden.
Die Feldnamen der Abfrage wurden von Access selbst generiert und heißen zB
Summe CP beruflich_Summe von CreditPoints: Summe von CreditPoints

Nun wollte ich die Gesamtsumme aller drei Bereiche zusammen rechnen lassen. Dazu habe ich den Ausdrucksgenerator benutzt, um Tippfehler auszuschließen.

Der generierte Ausdruck lautet
Ausdr1: [Summe CP beruflich_Summe von CreditPoints]+[Summe CP schulisch_Summe von CreditPoints]+[Summe CP Sonst_Summe von CreditPoints]

Nun erhalte ich beim Öffnen der Abfrage dreimal hintereinander die Aufforderung, einen Parameterwert für jeden der Ausdrücke anzugeben.
Wenn ich das Parameterfeld leer lasse und jedesmal mit OK bestätige, wird anschließend der neue Ausdruck richtig berechnet.

Vielen Dank im Voraus

Gibt es eine Möglichkeit, die nervige Parameterabfrage abzustellen?


MzKlMu

Hallo,
Du musst jede einzelne Summenformel für die Gesamtsumme wiederholen.

Aber, warum verwendest Du kein Formular zur Anzeige der Daten ?
Dann kannst Du die 3 Summen einfach addieren.

Dass Du hier 3 Tabellen brauchst weißt Du ?

- Teilnehmer
- Bereich
- Creditpoints (Fremdschlüssel zum Teilnehmer, FS zum Bereich und Feld für die Creditpoints).
Das ist eine klassische n:m Beziehung.

Zeige mal ein Bild des Beziehungsfensters.
Gruß Klaus

Landogardiner

Zu den Beziehungen: Ja, ich habe mehrere Tabellen. Die Grundtabelle über die Teilnehmer ("Schüler") und für alle drei Bereiche separat die Buchungen als n:m Beziehung. Die Creditpoints habe ich in separaten Tabellen erfasst. Screenshot ist im Anhang

DF6GL

Hallo,

Die Buchungs-Tabellen gehören zu einer zusammengefasst, dito für die CP-Tabellen.

Zusätzlich erforderlich ist eine Tabelle "tblCPBereiche" (sonst, schulisch, beruflich)  mit entspr. Fremdschlüsselfeld in "tblCPs"

Landogardiner

Ich habe die deshalb getrennt, weil man aus jedem der Bereiche eine Mindestpunktzahl erwerben muss. Zusätzlich noch 100 Punkte insgesamt.


Das funktioniert ja auch soweit. Ich habe ein Formular, in dem mir die einzelnen Bereiche samt Punkte sowie die Gesamtpunkte angezeigt werden.

Nun würde ich gerne ein Zertifikat drucken für jeden Teilnehmer, der die Bedingungen erfüllt.

MzKlMu

Hallo,
das Datenmodell ist falsch. Die 3 Tabellen aus meinem Vorschlag in #1 reichen vollständig aus. Ich halte die CP Tabellen auch für überflüssig.
Zitatweil man aus jedem der Bereiche eine Mindestpunktzahl erwerben muss
Die Mindestpunkzahl gehört in die Tabelle mit den Bereichen.
Dass das Datenmodell falsch ist, erkennt man auch an dem gleichen Aufbau der Tabellen. Das darf in einer Datenbank nicht sein.
Das solltest Du ändern, dann wird Dein Vorhaben zu einem Kinderspiel.
Access erfordert nun mal einen normalisierten Aufbau.

Und noch eine Frage:
Können die Schüler zu einem späteren Zeitpunkt erneut Punkte sammeln ?
Gruß Klaus

Landogardiner

Vielen Dank für den Hinweis. Ich versuche mal einen Neuaufbau.

Zitat von: MzKlMu am Januar 16, 2018, 09:56:52

Und noch eine Frage:
Können die Schüler zu einem späteren Zeitpunkt erneut Punkte sammeln ?
Wenn das Zertifikat einmal ausgeteilt ist, dann nicht. Aber sonst natürlich laufend während der Schulzeit.

MzKlMu

#7
Hallo,
die Antwort verstehe ich nicht ganz.
ZitatWenn das Zertifikat einmal ausgeteilt ist, dann nicht. Aber sonst natürlich laufend während der Schulzeit.
Es gibt also mehrere Zertifikate während der Schulzeit ?
Wenn ja, fehlt noch eine Tabelle zur Erfassung der Zertifikate. Was dann aber wieder einen anderen Aufbau der Beziehungen erfordert.
Bitte erkläre das mit den Zertifikaten mal genauer. Das ist wichtig, denn davon hängt der Aufbau ab.
Gruß Klaus

Landogardiner

Entschuldige bitte, ich war eine Zeitlang offline.

Die Schüler sollen einmal in der Sek I die Möglichkeit haben, Creditpoints zu sammeln und können dann am Ende der Sek I ein Zertifikat bekommen.
In der Sek II gibt es das gleiche Prinzip, aber da könnten die Creditpoints anders auf die Aktivitäten verteilt sein und auch die Bedingungen zur Erlangung des Zertifikats vom Sek I - Zertifikat abweichen.
Daher dachte ich, dass ich einfach zwei verschiedene Datenbanken anlege, da ja auch die Schüler andere sein können.

Landogardiner

Ich habe jetzt einen Neuaufbau gemacht. Ist das so richtig?