0

Handling Untertabellen

Moin, mein Hirn ist gerade verwirrt, ich brauch mal einen Denkanstoss :-)

Ich habe eine Tabelle, nennen wir sie Vorgang.

An einem Vorgang können Personen Teilnehmen, also habe ich eine Untertabelle Teilnehmer angelegt, die die Teilnehmer enthält dies sich also aus der Gesamttabelle Personen zieht. So ist sichergestellt, dass Mehrere Vorgänge jeweils mehrere Teilnehmer als n:m Beziehung beinhalten können. Das läuft.

Ein Vorgang kann auch mehrere Termine beinhalten, also hab ich im Vorgang eine weitere Untertabelle mit Terminen angelegt. Das läuft soweit, als dass die Termine zum Vorgang zugeordnet sind und alle Termine aller Vorgänge im Kalender auftauchen.

Nun möchte ich aber, dass zu jedem Termin eines Vorgangs die Teilnehmer zugeordnet werden können, weil es vom Ablauf her so ist, dass nicht immer alle Teilnehmer teilnehmen (müssen) bzw. es Termine für die ganze Gruppe und Termine für Teilgruppen gibt.

Mein Gedanke war nun, dass ich die Termin-Untertabelle mit der Teilnehmer-Untertabelle verknüpfe. Nun kann ich zu einem Termin aus der Teilnehmerliste des Vorganges auswählen und diese dem Termin zuordnen. Allerdings kann ich so jeden Teilnehmer nur einem Termin zuordnen, [da es eine 1:n-Beziehung ist] Nun könnte ich hier wieder versuchen n:m zu gestalten indem ich eine weitere Untertabelle anlege, die n(Termin):m(Teilnehmer) realisiert... und diese Teilnahme nenne... und in einem hinteren Tab verstecke...

Anhand dieser Zuordnung soll dann in einem weiteren Schritt auch eine Rechnungsstellung erfolgen, bzw. geprüft werden, was schon angerechnet ist und was noch nicht. Diese Struktur soll Einzel- und Gruppentermine, deren Anzahl fest oder variabel ist Vorgangsweise abbilden...

Ist das ein Holzweg, sieht da jemand eine einfacher zu handhabende Lösung und mag mir was verraten?

4 Antworten

null
    • mirko3
    • vor 5 Monaten
    • Gemeldet - anzeigen

    Hallo Stefan. Vielleicht reicht dir die Auswahl der Teilnehmer in der Tabelle Termine über ein dynamisches Auswahlfeld. Dann sparst du dir die Verknüpfungen. Per Script kann in der Teilnehmertabelle damit auch abgebildet werden, wer wo teilgenommen hat z.B. für eine Rechnungslegung. Sonst sehe ich auch nur die Möglichkeit über eine n:m Verknüpfung und eine Extratabelle. Mirko

      • Stefan_Gahrmann
      • vor 5 Monaten
      • Gemeldet - anzeigen

       jaa, über ein dyn. Auswahlfeld in den Terminen, das sich aus der Teilnehmerliste generiert (max 20 Teilnehmer, wenn ich das richtig überblicke) habe ich auch schon nachgedacht - muss ich lernen ;-)

      Mit einer weiteren Tabelle, die im Termin sich wieder auf die Teilnehmer bezieht habe ich es schon versucht, mit dem Ergebnis, dass es sich zwar richtig verknüpfen lässt, ich aber die gesamte Teilnehmerliste aller Vorgänge zur Auswahl angezeigt bekomme und nicht nur die Teilnehmer aus dem aktuellen Vorgang :-(

      Teilnehmer 1:n nach Personen (Andere Tabelle). Und ich gehe im Formular artig den Weg aus Vorgang. Was auf Ebene 1 noch schön klappt, dass ich zu Termin nur die Teilnehmer des Vorgangs auswählen könnte (das aber weglasse und über Teilnahmen gehe, den Termin anwähle und den Teilnehmer auswählen möchte - hier folgt er nicht mehr der Referenzierung sondern bietet Alle Teilnehmer aller Vorgänge an. Oder muss ich das ohne Untertabelle und trotzdem mit Referenzierung lösen (Ist ja äquivalent vom ER-Datenmodell, nur etwas weniger übersichtlich...?)...? 

    • mirko3
    • vor 5 Monaten
    • Gemeldet - anzeigen

    Hi Stefan. Vielleicht hilft Dir das. Mirko

    • Stefan_Gahrmann
    • vor 5 Monaten
    • Gemeldet - anzeigen

    Danke Mirko! Das bildet es auch (fast) ab um die Teilnahmen abzubilden :-) Es fehlt die Assoziation zwischen Termin und Vorgang, wenn es noch keine Teilnehmer gibt. Hilft aber beim Verstehen

    Inzwischen ist mir auch Dank aktiver Hilfe die Lösung zugeflogen und damit auch einiges an Verständnis. :-)

    Das o.g. Datenmodell bleibt und bildet dank der Untertabellen schön ab, wer fest zu dem Vorgang gehört und wer dann aus diesem Personenkreis an den Einzelterminen teilgenommen hat.

    Interessant für mich war, dass bei der Auswahl der Terminteilnehmer auch nur die Vorgangs-Teilnehmer angezeigt werden und verknüpfbar sind, somit by Design eine Falschverknüpfung durch den Anwender unterbunden werden soll.

    Das gelingt indem im Auswahl-Dialog die Ergebnismenge über Einschränkung auf die Teilnehmer nur die gewünschte Liste gezeigt wird - was dann wieder fast wie eine Auswalhlliste formatierbar ist :-)

    Bei Interesse kann ich das bei Gelegenheit nochmal als DB-Snippet hier hinterlegen.

Content aside

  • Status Answered
  • vor 5 MonatenZuletzt aktiv
  • 4Antworten
  • 93Ansichten
  • 2 Folge bereits