Minimum-Notation

Hallo Leute,

ich habe folgendes Problem:
Zu einem Datensatz einer Tabelle sind mindestens 5 Datensätze einer anderen Tabelle zugeordnet, wie z.B. ein Seminar findet erst statt, wenn 5 Teilnehmer sich angemeldet haben…
Wie bilde ich es in Access ab?

Vielen Dank im Voraus

galina

Hallo Galina,

richte in Deinem Formular (ich nehme an, Du hast eins eingerichtet) ein Feld ein mit dem Namen z. B. SeminarJANEIN.

Dann tippst Du in die Ereignisprozedur dieses Formulars BEI AKTIVIERUNG diesen Text ein:

If DCount("\*", "DeineSeminartabelle") 

Falls Du in dieser Seminartabelle Alle Seminare gespeichert hast, bietet es sich an, Dcount noch einen Filter mitzugeben z. B.



    If DCount("\*", "DeineSeminartabelle", "[Seminar] = 'Access-Kurs' ) 
    
    
    gruss moritzbock
    
    
    > <small>[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]</small>

Hallo Moritzbock,

danke für deine Antwort, leider brauche ich eine Lösung auf der „tabellenebene“, also keine Formulare/Abfragen.
Es soll mit Makro, oder am besten mit Hilfe eines Moduls geschrieben werden (VBA), so was wie ‚begin transaction‘ oder ‚stored procedure‘. Weißt du zufällig wie das funktioniert?

Vielen Dank im Voraus

Galina

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Leider nein, Galina,

da kann ich Dir auf die Schnelle nicht helfen :-[

gruss moritzbock

Hallo Moritzbock,

danke für deine Antwort, leider brauche ich eine Lösung auf
der „tabellenebene“, also keine Formulare/Abfragen.
Es soll mit Makro, oder am besten mit Hilfe eines Moduls
geschrieben werden (VBA), so was wie ‚begin transaction‘ oder
‚stored procedure‘. Weißt du zufällig wie das funktioniert?

Vielen Dank im Voraus

Galina

Vielen Dank trotzdem…

gruss

Galina

Leider nein, Galina,

da kann ich Dir auf die Schnelle nicht helfen :-[

gruss moritzbock

Hi,
ihr seid doch schon ganz nahe dran:

Die Abfrage könnte dann so lauten:
update tabelle
set seminar_findet_statt = ‚X‘
where DCount("*", „DeineSeminartabelle“, "[Seminar] = ‚Access-Kurs‘ ) >= 5 ;

Oder:
Select Iif(DCount("*", „DeineSeminartabelle“, "[Seminar] = ‚Access-Kurs‘ ) >= 5, ‚Ja‘, ‚Nein‘) As SeminarFindetStatt
From DeinerTabelle;

Das nur als Anregung, ich kenne Deine Struktur nicht.

Gruß

J.

Auf Tabellenebene geht da nichts, da Access keine Trigger kennt. (Und auch wenn - müsstest du ja auch erst einmal die 4 Teilnehmer eintragen um dann festzustellen, dass das ganze Konstrukt ungültig ist!)

Gruß aus dem Norden
Reinhard Kraasch (http://www.kraasch.de - Access Tipps & Tricks)