Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Mictit1966 am November 16, 2014, 16:31:24

Titel: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 16, 2014, 16:31:24
hallo Forumsmitglieder, habe schon alle Google-Seiten durchgelesen und finde keine Lösung.
Ich habe eine Vereinsmitglieder-DB geschrieben und möchte ein Haupt- und Unterformular bauen, welches Beiträge erfasst.
Habe 3 Tabellen: tblMitglieder, tblMannschaften und tblBeiträge alle über ID in 1:n
Jetzt möchte ich ein Beitragsformular entwerfen in dem mir jeweils nur die Mitglieder einer Mannschaft angezeigt werden. Ich hatte an Haupt- und Unterformular gedacht, im Haupt ein Kombi-Feld steht und Unterformular(Beiträge) nur die Mitglieder angezeigt werden, die zur ausgewählten Mannschaft gehören. und nicht alle 280 Mitglieder. Wer kann mir da helfen? War ich verständlich?
Titel: Re: Haupt- und Unterformular
Beitrag von: DF6GL am November 16, 2014, 17:01:36
Hallo,

beschreibe

"tblMitglieder, tblMannschaften und tblBeiträge alle über ID in 1:n"

genauer..

(Primärschlüssel-Felder, Fremdschlüsselfelder, (inhaltliche) Bedeutung der Tabellen, für was wird der Beitrag erhoben: Mitgliedsbeitrag, Mannschaftsteilnahme-Beitrag, oder....)
Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 16, 2014, 17:46:22
Hallo  DF6GL, Ich habe mal vier GIF-Dateien angehängt, die sich vermutlich selbst erklären, Der Beitrag ist ein Zusatzbeitrag den alle Mitglieder einmal jährlich zahlen müssen, Neu-Mitglieder ab August nur die Hälfte.
Ich stehe vor der Aufgabe die gesamten Beiträge einzeln zu erfassen, jeder Mannschaftleiter bringt mir eine Liste mit den Beiträgen und ich muss sie dann in der DB den Mitgliedern zuordnen, damit ich nicht alle 280 Mitglieder einzeln durchsuchen muß würde ich gern die Vorausauswahl über die Mannschften machen.
Danke
Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 16, 2014, 17:50:54
Daran erkennt man, dass ich noch nicht viel Erfahrungen habe mit Access-o-mania: jetzt aber die fehlenden 3 Bilder
Titel: Re: Haupt- und Unterformular
Beitrag von: database am November 16, 2014, 19:09:07
Hallo,

soweit aus deinen Graphiken erkennbar ist das Datenmodell mit Fehlern behaftet!
Keine Normalisierung, undefinierte Beziehungen, Sonderzeichen in den Spaltenbezeichnungen und Tabellennamen,
nicht benötigte Tabellen (z.B. 'Ein-Austritt'), Abfragen haben im Beziehungsfenster nichts zu suchen,
Anlagefelder - schönes neues Feature aber eher unbrauchbar, uneinheitliche Tabellenbezeichnungen, ...

Da solltest du zu aller erst ansetzen um nicht Gefahr zu laufen dein Daten in ein 'chaotisches System' zu verfrachten.
Das führt in der Regel recht schnell zu Problemen!
Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 16, 2014, 19:45:36
Hallo Database,
also die angemerkten Dinge habe ich in mühevoller Kleinarbeit beseitigt. Aber die Lösung meines Problems stellt das nicht dar. Wie geht es jetzt weiter?
Ich bin für jede Hilfe dankbar.

Titel: Re: Haupt- und Unterformular
Beitrag von: database am November 16, 2014, 20:14:46
Hallo,

"...die angemerkten Dinge habe ich in mühevoller Kleinarbeit beseitigt..."

Du erlaubst mir ein gesundes Maß an Skepsis - in der kurzen Zeit  ;)

Grundsätzlich ist dein Problem so zu lösen, dass du ein Hauptformular basierend auf der Tabelle 'tblMannschaften' erstellst und auf diesem ein Unterformular welches auf der Tabelle tblMitglieder aufsetzt.
Die beiden Formulare sind über den PK von tblMannschaften und dem dazugehörigen FK in der Tabelle 'tblMitgleider' verbunden. Dadurch bekommst du die Möglichkeit für jede angezeigte Mannschaft die passenden Mitglieder im Unterformular darzustellen.
Weiter gäbe es nun die Möglichkeit mittels eines weiteren Unterformulars welches auf der Tabelle 'tblBeiträge' aufsetzt die Beiträge jedes Mitglieds anzuzeigen und ggf. einen neuen Datensatz in der Tabelle 'tblBeitraege' zu erzeugen.
Im einfachsten Fall sind die beiden Unterformulare per PK aus 'tblMitgleider' und FK aus 'tblBeitraege' verbunden.

Die Aktualisierung der dargestellten Daten in den Unterformularen erfolgt beim Datensatzwechsel - also mit dem Ereignis 'Beim Anzeigen' der Formulare
Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 16, 2014, 20:56:21
Also, ich habe undefinierte Beziehungen entsorgt, Sonderzeichen und Umlaute ausgetauscht und unnötige Tabellen ganz entfernt. Was die Normalisierung betrifft stehe ich auf dem Schlauch bin eben Autodidakt und noch im Anfänger-Fortgeschritten-Status (mehr Anfänger).
Deine Anleitung habe ich versucht nachzuvollziehen, ist mir aber nicht gelungen. Die Datenfelder der Mitglieder bleiben leer und sind nicht ausfüllbar.
Vielleicht sollte ich noch erwähnen, dass ich Office2013 verwende.
Titel: Re: Haupt- und Unterformular
Beitrag von: DF6GL am November 17, 2014, 08:18:40
Hallo, 

bevor die erwähnten Beziehungen noch nicht korrekt und vollständig bestehen, ist es müßig, Formulare aufzubauen.

Zeige demzufolge als Screenshot den momentanen Zustand der DB.

Tipp:   Ordne die Tabellen im Beziehungsfenster "spaltenweise" so an, dass die jeweiligen 1-Tabellen immer links der damit verbundenen n-Tabelle(n) liegen. Dadurch werden die Abhängigkeiten der Daten wesentlich übersichtlicher gezeigt und "Fehlverbindungen" offensichtlicher.
Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 17, 2014, 10:52:49
Hallo,
im Anhabg die geordneten neuen Beziehungen. Ich hoffe ich habe richtig sortiert.Danke

Titel: Re: Haupt- und Unterformular
Beitrag von: DF6GL am November 17, 2014, 12:39:51
Hallo,

ok, so ist es besser angeordnet und dazu gleich ein paar Kommentare:

-- Feldwiederholungen (z. B: mglNachname,etc.) in den n-Tabellen ist falsch/überflüssig. Es reicht ein (Fremdschlüssel-) Feld für den Primärschlüsselwert aus der jeweiligen 1-Tabelle.

-- Ein Anlagefeld als Ersatz für eine Detailtabelle ist eher nicht zielführend.

-- Für was ist tblZeiten zu verwenden?  Soll für ein Mitglied dessen mehrmalige Ein-Und Austritte (historisch) nachvollziehbar sein?

-- kann ein Mitglied nur immer einer Mannschaft angehören und wäre dies zeitlich festgeschrieben?


-- Was bedeutet "tblBeitrag.BeiMannschaft"?


-- wird ein Training nur nach dem Datum seines Stattfindens gekennzeichnet oder gibt  es auch verschiedene Trainingsarten, an denen nur bestimmte Mitglieder teilnehmen (können/dürfen)?

-- Was soll tblSpieleinteilung darstellen?  Sind das "Spiele", die nur nach ihrem Veranstaltungsdatum gekennzeichnet werden?

-- Was bedeutet "tblSpieleinteilung.Spielt" ?
-- tblMannschaft muss m. E. an tblSpieleinteilung angebunden werden.

-- es wären noch weitere Detail-Tabellen und Änderungen an der Beziehungen (Datenabhängigkeiten) erforderlich.


Um Beiträge für die akt. DB-Tabellen-Konstellation eingeben zu können, wäre ein Hauptform mit Datenherkunft zu tblMitglieder nutzbar, das ein UFO-Steuerelement enthält, das wiederum ein Endlos-Form mit Datenherkunft zu tblBeitrag anzeigt und über die Schlüsselfelder "Mitgliedernummer" und "BeiMglRefID" verknüpft.
Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 18, 2014, 11:52:54
Hallo DF6GL, database und Community,

ich habe die DB nochmal ganz von vorn aufgebaut, kostet zwar viel Arbeit die Daten wieder einzugeben, aber vielleichtlohnt es sich von vorn anzufangen.

Mein oben beschriebenes Problem bekam ich nicht gelöst. Vielleicht könnt ihr mir nun besser helfen.
Danke
Michael
Titel: Re: Haupt- und Unterformular
Beitrag von: MaggieMay am November 18, 2014, 12:52:43
Hi,
Zitatkostet zwar viel Arbeit die Daten wieder einzugeben
das sollte sich mit Abfragen lösen lassen.
Titel: Re: Haupt- und Unterformular
Beitrag von: DF6GL am November 18, 2014, 13:50:50
Hallo,

ZitatMein oben beschriebenes Problem bekam ich nicht gelöst. Vielleicht könnt ihr mir nun besser helfen.

Und wo liegt nun das Problem? Den Formular-Aufbau hab ich schon beschrieben..
Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 18, 2014, 15:17:49
Hallo,
ZitatUm Beiträge für die akt. DB-Tabellen-Konstellation eingeben zu können, wäre ein Hauptform mit Datenherkunft zu tblMitglieder nutzbar, das ein UFO-Steuerelement enthält, das wiederum ein Endlos-Form mit Datenherkunft zu tblBeitrag anzeigt und über die Schlüsselfelder "Mitgliedernummer" und "BeiMglRefID" verknüpft.
Das habe ich versucht, so gelingt mir das aber nicht. Ich muss da immer noch alle 280 Mitglieder durchklicken und die Beiträge eingeben.Ich möchte aber über die Mannschaftsbezeichnungen erst filtern und dann nur die zugehörigen Mitglieder finden. Da die Mannschaftslisten mit den Beiträgen als Fresszettel bei mir abgeben werden scheint mir dieser Weg der einfachere aber die Programmierung überfordert mich.

Zitatdas sollte sich mit Abfragen lösen lassen.
Das schaffe ich vielleicht sogar, allerdings sind die Tabellen jetzt andere.
DAnke für die Hilfe, ich bin froh dass es Euch gibt.
Titel: Re: Haupt- und Unterformular
Beitrag von: DF6GL am November 18, 2014, 15:58:43
Hallo,

ich blicke jetzt nicht, was genau Du machen willst.

Das Feld "BeiBeitrag" hat den Sinn, den anstehenden Mitgliedsbeitrag eines Mitgliedes zu erfassen. Was hat das mit Mannschaften zu tun?

Wenn es einen "ManschaftsBeitrag" gibt, so wäre ein entspr. Feld ( mit evtl. weiteren wie "DatumBezahlt" oder Ähnliche ) in tblMannschaftseinteilung aufzunehmen.

Um die Mitgliedsbeiträge zu erfassen, passt meine vorgeschlagene Formularkonstruktion. In diesem HFO könnten dann natürlich auch eingrenzende Suchfelder eingebaut werden, um direkt ein Mitglied auszuwählen.

Sollen "Mannschaftsbeiträge" erfasst werden, so fehlen zunächst die o. g. Felder für deren Speicherung. Mit einem Einzel-Form mit Basis zu tblMannschaftseinteilung könnten die Mannschaftsbeiträge erfasst werden, wobei mittels ungebundenem Kombifeld eine Auswahl der akt. betroffenen Mannschaft möglich ist.


Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 18, 2014, 18:02:32
Hallo DF6GL,
Du hast recht mit den Mannschaften hat das erstmal nichts zutun. Ich möchte bei der Beitragseingabe so eine Art Suchfeld einrichten, wo ich die Mannschaften vorab auswählen kann, damit ich, wenn ich den Beitrag eingeben muss, nicht alle Mitglieder angezeigt gekomme durch die ich mich dann durchwühlen muss.
Es soll kein Mannschaftsbeitrag eingegeben werden, aber da ich die Listen der Trainer zu unterschiedlichen Zeiten erhalte, die Mitglieder nach ihrer Erfassung oder notfalls alphabetisch geordnet sind, muss ich jedes Mitglied durch klicken. Wenn ich jetzt aber im Formular (HF undUF) per vorauswahl nur die Manschaftszugehörigen angezeigt bekomme, kann ich das schneller erledigen.

ZitatUm die Mitgliedsbeiträge zu erfassen, passt meine vorgeschlagene Formularkonstruktion. In diesem HFO könnten dann natürlich auch eingrenzende Suchfelder eingebaut werden, um direkt ein Mitglied auszuwählen.
Das ist schon die Sache die ich mir vorstelle, aber wie kriege ich das hin? und es soll nicht nur ein Mitglied agezeigt werden sondern alle die zur Mannschaft gehören.

Vielleicht drücke ich mich zu kompliziert aus, aber ich weiß nicht wie ich es besser beschreiben soll.

Vielen Dank
Titel: Re: Haupt- und Unterformular
Beitrag von: Mictit1966 am November 18, 2014, 21:05:25
E R F O L G

Hallo DF6GL,
dank Deiner Hinweise habe ich es jetzt doch hinbekommen. Ich habe das Beitragsformular zum Unterformular des Mitgliederformulars und dasganze dann zum Unterformular des Mannschaftsformular gemacht. Jetzt kann ich erst die Mannschaft wählen und dann nur den Mitgliedern der Mannschaft Beiträge zu ornden.
Nochmals vielen Dank :)